Real-time transport protocol (RTP) as described in RFC 3550 standard, published by the Internet Society on July 2003 is a widely used protocol for transmitting real-time multimedia over internet protocol (IP) networks. Applications usually run RTP on top of a User Datagram Protocol (UDP) as the network carrier protocol but RTP is designed to ride on top of any other transport layer protocol and is not inextricably linked to UDP. The UDP does not require al establishment of a connection between the sender and the receiver and is considered to be an unreliable protocol in that it cannot ensure that all the transmitted packets will arrive at all, arrive undamaged or arrive in the correct order. Such an unreliable protocol may be unsuitable for applications that require network transport reliability, for example security recording applications.
Another problem associated with the RTP is poor network utilization due to its large overhead. For example, a typical 74-Byte RTP packet may include 54 bytes of headers and only 20 bytes of voice packets
Yet another problem associated with RTP regarding network utilization is the packet rate typically produced by this protocol when carrying real time data. For example, communicating a packet every 20 milliseconds (a typical rate for voice over IP applications) will yield a packet rate of 50 packets a second.
It will be appreciated that for simplicity and clarity of illustration, elements shown in the figures have not necessarily been drawn to scale. For example, the dimensions of some of the elements may be exaggerated relative to other elements for clarity. Further, where considered appropriate, reference numerals may be repeated among the figures to indicate corresponding or analogous elements.